package jobs

import (
	"wecom_rebot/services"
)

// SenderHandler 处理媒体接口Cookie
type SenderHandler interface {
	Handle(content string) error
}

// SenderHandlerRegistry 服务注册器（使用单例模式）
var SenderHandlerRegistry = make(map[string]SenderHandler)

// Service 服务接口
type Service interface {
	Handle(msgId int, subjectName, roomId string, content []string, jobId uint64) error
}

// 服务注册器（使用单例模式）
var serviceRegistry = make(map[string]Service)

func init() {
	serviceRegistry["复制户"] = &services.CopyAccountService{}                   // 腾讯复制户 测试完成 自动同步也测试完成
	serviceRegistry["巨量账户分配"] = &services.OeBindSaleService{}                 // 巨量账户分配 测试完成
	serviceRegistry["巨量账户批量分配"] = &services.OeBindBatchService{}              // 巨量账户批量分配 测试完成
	serviceRegistry["巨量AD复制户"] = &services.HugeAdCopyAccountService{}         // 巨量AD复制户	测试完成 自动同步也测试完成
	serviceRegistry["巨量AD开户"] = &services.HugeAdOpenAccountService{}          // 巨量AD开户 测试完成
	serviceRegistry["巨量AD查询直客"] = &services.HugeAdSearchWithoutService{}      // 巨量AD查询直客	测试完成
	serviceRegistry["巨量本地推复制户"] = &services.HugeLocalCopyAccountService{}     // 巨量本地推复制户  测试完成 自动同步也测试完成
	serviceRegistry["巨量本地推开户"] = &services.HugeLocalOpenAccountService{}      // 巨量本地推开户
	serviceRegistry["巨量本地推查询直客"] = &services.HugeLocalSearchWithoutService{}  // 巨量本地推查询直客 测试完成
	serviceRegistry["巨量千川复制户"] = &services.HugeQcCopyAccountService{}         // 巨量千川复制户 测试完成
	serviceRegistry["巨量千川开户"] = &services.HugeQcOpenAccountService{}          // 巨量千川开户
	serviceRegistry["巨量千川查询直客"] = &services.HugeQcSearchWithoutService{}      // 巨量千川查询直客 测试完成
	serviceRegistry["快手复制户"] = &services.DeftHandCopyAccountService{}         // 快手复制户 测试完成  自动同步也测试完成
	serviceRegistry["快手验证码"] = &services.DeftHandSendSmsService{}             // 快手验证码 测试完成
	serviceRegistry["绑定销售"] = &services.BindSaleService{}                     // 小红书绑定销售	暂定不处理，后续出了模块 四川和本土的区分
	serviceRegistry["小红书开户"] = &services.OpenAccountXhsService{}              // 小红书开户	暂定不处理，后续出了模块 四川和本土的区分
	serviceRegistry["小红书执照查询"] = &services.SearchXhsLicenseService{}          // 小红书执照查询	暂定不处理，后续出了模块 四川和本土的区分
	SenderHandlerRegistry["设置腾讯广告Cookies"] = &services.SetTencentAdvCookies{} // 设置腾讯广告Cookies 测试完成
	SenderHandlerRegistry["设置腾讯广告G-Tk"] = &services.SetTencentAdvGtK{}        // 设置腾讯广告G-Tk 测试完成
	SenderHandlerRegistry["设置巨量Token"] = &services.SetOeAdvCgCsrfToken{}      // 设置巨量Token 测试完成
}
